﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace GoodTrader.GTSystem
{
    /*
     * @brief 이 시스템은 파동의 끝점끼리 연결하여 그 연장선에 다가오면 아주짧은 손절을 잡고 반대방향으로 잡는 시스템이다.
     */ 
    public class CWaveTipSystem
    {
        // 신호를 발생시키고자 하는 상품코드
        private string m_Code = "";
        public string Code
        {
            get { return m_Code; }
            set { m_Code = value; }
        }

        // 진입 기준을 판단할 데이터 셋 객체
        private GTDownload.CpDataSet mCpDataSetObj = null;
        public GTDownload.CpDataSet CpDataSetObj
        {
            get { return mCpDataSetObj; }
            set { mCpDataSetObj = value; }
        }

        // 파동관리자 - 파동을 만들어 낸다.
        GTWave.GTWaveManager m_WaveMgr = new GTWave.GTWaveManager();

        private void MakeTrendLine()
        {
            // 파동의 산과 마루가 되는 점을 대충 찾는다.
            m_WaveMgr.MakeUpDowPointList(mCpDataSetObj.FutureTickData.MA3);
            // 그 지점을 정확하게 찾는다.
            m_WaveMgr.FindRealWavePoint(mCpDataSetObj.FutureTickData.High, mCpDataSetObj.FutureTickData.Low);
            // 찾은 점으로 추세선을 만든다.
            m_WaveMgr.FindTrendLine();
        }
    }
}
